package com.projecy.storehouse.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.projecy.storehouse.entity.OutStorage;
import com.projecy.storehouse.entity.OutStorageDefault;
import com.projecy.storehouse.entity.TheLibrary;
import com.projecy.storehouse.entity.TheLibraryDefault;
import com.projecy.storehouse.entity.dto.UpdatePutRegister;
import org.springframework.http.ResponseEntity;

import java.util.List;


/**
 * (TheLibrary)表服务接口
 *
 * @author maoyi
 * @since 2023-03-24 16:46:09
 */
public interface TheLibraryService extends IService<TheLibrary> {


    /**
     * 添加出库申请
     *
     * @param theLibrary
     * @param list
     * @return
     */
    ResponseEntity<Object> insertTheLibrary(TheLibrary theLibrary, List<TheLibraryDefault> list);


    /**
     * 出库申请查询
     * @param mark
     * @return
     */
    ResponseEntity<Object> seacherTheLibrary(String mark);

    /**
     * 出库申请查询(状态)
     * @param mark
     * @return
     */
    ResponseEntity<Object> seacherTheLibraryMark(String mark);

    /**
     * 出库申请复核
     * @param outId
     * @param mark
     * @return
     */
    ResponseEntity<Object> updateTheLibraryMark(Long outId,String mark);


    /**
     * 出库调度
     */

    /**
     * 出库调度查询出库理由
     * @param mark
     * @param reason
     * @return
     */
    ResponseEntity<Object> seacherTheLibraryDispatchMark(String reason,String mark);

    /**
     *点击调度
     * @param productId
     * @return
     */
    ResponseEntity<Object> checkTheLibraryDispatch(Long productId);

    /**
     *总调度
     * @param putId
     * @return
     */
    ResponseEntity<Object> checkTheLibraryDispatchAll(Long putId,String uname);


    /**
     * 入库登记
     */


    ResponseEntity<Object>  updateOutRegister(UpdatePutRegister updatePutRegister);



    ResponseEntity<Object>  outCheckAndAdd(Long putId);

}